Object detection device, object detection system, object detection method, and non-transitory computer-readable medium storing program

ABSTRACT

Provided is an object detection device capable of accurately calculating a movement parameter related to the movement of an object. An object detection device (1) includes a feature extraction unit (2) and a calculation unit (4). When an object passes each of a plurality of irradiation areas of irradiation light from a first sensor and a second sensor, which are configured to detect a feature of a part of a surface of an object by applying irradiation light, the feature extraction unit (2) extracts features of the object in the plurality of irradiation areas. The calculation unit (4) calculates a movement parameter of the object between the plurality of irradiation areas when a difference between the features respectively extracted in the plurality of irradiation areas falls below a predetermined first threshold.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This application is a National Stage Entry of International ApplicationNo. PCT/JP2018/010422, filed Mar. 16, 2018. The entire contents of theabove-referenced application is expressly incorporated herein byreference.

TECHNICAL FIELD

The present invention relates to an object detection device, an objectdetection system, an object detection method, and a program, and,particularly, relates to an object detection device, an object detectionsystem, an object detection method, and a program that detect an objectby using a sensor.

BACKGROUND ART

A technique that detects an object by using a sensor is known. In regardto this technique. Patent Literature 1 discloses a pedestrian trajectoryextraction device that detects position coordinates of a pedestrian by aplurality of laser sensors, integrates the detected data by coordinatetransformation in a server, and thereby extracts the trajectory of thepedestrian in real time and over a wide range. The pedestrian trajectoryextraction device according to Patent Literature 1 controls a pluralityof clients provided in correspondence with a plurality of laser sensorsthat detect the position of a pedestrian or an object. The pedestriantrajectory extraction device includes a synchronization means, anintegration means, and a trajectory extraction means. Thesynchronization means synchronizes detection time of the plurality oflaser sensors. The integration means integrates the position coordinatesof a pedestrian extracted by the plurality of clients into onecoordinate system from data detected by the plurality of laser sensors.The trajectory extraction means extracts the movement trajectory of thepedestrian from the position coordinates of the pedestrian obtained bythe integration means.

Patent Literature 2 discloses an image measurement device that measuresan image of an object. The image measurement device according to PatentLiterature 2 includes first and second imaging means placed in at leastdifferent viewing locations, a three-dimensional position detectionmeans, a movement model data storage means, and an action recognitionmeans. The three-dimensional position detection means detects athree-dimensional position of a feature point in an object from outputimages of the first and second imaging means. The movement model datastorage means stores data related to each action and posture of amovement model of an object. The action recognition means compares, intime series, the detected three-dimensional position or its temporalchange of the feature point in an object with data related to the actionand posture of the object stored in the movement model data storagemeans, and thereby recognizes the action and posture of the object.

CITATION LIST Patent Literature

PTL1: Japanese Unexamined Patent Application Publication No. 2004-191095

PTL2: Japanese Unexamined Patent Application Publication No. H06-213632

SUMMARY OF INVENTION Technical Problem

In the above-described patent literatures, the action (movementtrajectory) of an object is detected by using a plurality of sensors(imaging means). In the case of detecting the action of an object byusing a plurality of sensors, the object to be detected by the pluralityof sensors needs to be the same. If objects detected by the plurality ofsensors are possibly different, there is a possibility that the actionof an object is wrongly detected due to a mix-up between objects. Theabove-described patent literatures disclose nothing about detectingwhether objects detected by a plurality of sensors are the same or not.Thus, according to the above-described patent literatures, there is apossibility that the action of an object is wrongly detected in theenvironment where a plurality of objects can exist.

The present disclosure has been accomplished to solve the above problem,and an object of the present disclosure is thus to provide an objectdetection device, an object detection system, an object detectionmethod, and a program capable of accurately calculating a movementparameter related to the movement of an object.

Solution to Problem

An object detection device according to the present disclosure includesa feature extraction means for extracting features of an object in aplurality of irradiation areas of irradiation light from at least onesensor when the object passes each of the plurality of irradiationareas, the at least one sensor being configured to detect a feature of apart of a surface of an object by applying irradiation light, and acalculation means for calculating a movement parameter related tomovement of the object between the plurality of irradiation areas when adifference between the features respectively extracted in the pluralityof irradiation areas falls below a predetermined first threshold.

An object detection system according to the present disclosure includesat least one sensor configured to detect a feature of a part of asurface of an object by applying irradiation light, and an objectdetection device, wherein the object detection device includes a featureextraction means for extracting features of an object in a plurality ofirradiation areas of irradiation light from at least one sensor when theobject passes each of the plurality of irradiation areas, the at leastone sensor being configured to detect a feature of a part of a surfaceof an object by applying irradiation light, and a calculation means forcalculating a movement parameter related to movement of the objectbetween the plurality of irradiation areas when a difference between thefeatures respectively extracted in the plurality of irradiation areasfalls below a predetermined first threshold.

An object detection method according to the present disclosure includesextracting features of an object in a plurality of irradiation areas ofirradiation light from at least one sensor when the object passes eachof the plurality of irradiation areas, the at least one sensor beingconfigured to detect a feature of a part of a surface of an object byapplying irradiation light, and calculating a movement parameter relatedto movement of the object between the plurality of irradiation areaswhen a difference between the features respectively extracted in theplurality of irradiation areas falls below a predetermined firstthreshold.

A program according to the present disclosure causes a computer toperform a step of extracting features of an object in a plurality ofirradiation areas of irradiation light from at least one sensor when theobject passes each of the plurality of irradiation areas, the at leastone sensor being configured to detect a feature of a part of a surfaceof an object by applying irradiation light, and a step of calculating amovement parameter related to movement of the object between theplurality of irradiation areas when a difference between the featuresrespectively extracted in the plurality of irradiation areas falls belowa predetermined first threshold.

Advantageous Effects of Invention

According to the present disclosure, there are provided an objectdetection device, an object detection system, an object detectionmethod, and a program capable of accurately calculating a movementparameter related to the movement of an object.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a view showing the overview of an object detection deviceaccording to an example embodiment of the present disclosure.

FIG. 2 is a view showing the configuration of an object detection systemaccording to a first example embodiment.

FIG. 3 is a functional block diagram showing the object detection systemaccording to the first example embodiment.

FIG. 4 is a flowchart showing an object detection method performed by anobject detection device according to the first example embodiment.

FIG. 5 is a view illustrating a method of calculating a moving directionand a moving speed according to the first example embodiment.

FIG. 6 is a flowchart showing a method of determining whether the sameposition on the same object has passed a first irradiation area and asecond irradiation area in a first example.

FIG. 7 is a view illustrating the first example.

FIG. 8 is a flowchart showing a method of determining whether the sameposition on the same object has passed a first irradiation area and asecond irradiation area in a second example.

FIG. 9 is a view illustrating the second example.

FIG. 10 is a flowchart showing a method of determining whether the sameposition on the same object has passed a first irradiation area and asecond irradiation area in a third example.

FIG. 11 is a view illustrating the third example.

FIG. 12 is a flowchart showing a method of determining whether the sameposition on the same object has passed a first irradiation area and asecond irradiation area in a fourth example.

FIG. 13 is a view illustrating the fourth example.

FIG. 14 is a view illustrating coordinate transformation of a data groupin consideration of the rotation of an object.

DESCRIPTION OF EMBODIMENTS Overview of Example Embodiment According toPresent Disclosure

Prior to describing example embodiments of the present disclosure, theoverview of an example embodiment according to the present disclosure isdescribed. FIG. 1 is a view showing the overview of an object detectiondevice 1 according to an example embodiment of the present disclosure.

The object detection device 1 includes a feature extraction unit 2 thatfunctions as a feature extraction means, and a calculation unit 4 thatfunctions as a calculation means. The feature extraction unit 2 extractsfeatures of an object in a plurality of irradiation areas of irradiationlight from a first sensor and a second sensor, which are configured todetect a feature of a part of the surface of an object by applyingirradiation light, when the object passes each of the irradiation areas.The calculation unit 4 calculates a movement parameter of the objectbetween the plurality of irradiation areas when a difference between thefeatures respectively extracted in the plurality of irradiation areasfalls below a predetermined first threshold.

The irradiation light is laser light, for example, though not limitedthereto. Further, the movement parameter is a parameter related to themovement of an object. The movement parameter is the moving directionand the moving speed of an object, for example, though not limitedthereto. Further, although two sensors (the first sensor and the secondsensor) are shown in FIG. 1, the number of sensors may be one, or threeor more. In the case where the number of sensors is one, one sensor mayhave a plurality of irradiation areas. For example, one sensor may forma first irradiation area at time t1 and form a second irradiation areaat time 2.

Since the object detection device 1 according to this example embodimentcalculates the movement parameter by using features of an object, it isable to calculate the movement parameter when the same position on thesame object passes a plurality of irradiation areas. Specifically, theobject detection device 1 according to this example embodiment is ableto identify an object by using features of the object when calculatingthe movement parameter. The object detection device 1 according to thisexample embodiment is thereby capable of accurately calculating themovement parameter without mixing up between objects.

It should be noted that use of an object detection method performed bythe object detection device 1 also enables accurate calculation of themovement parameter without mixing up between objects. Further, use of aprogram capable of implementing the object detection method also enablesaccurate calculation of the movement parameter without mixing up betweenobjects. Furthermore, use of an object detection system that includesthe object detection device 1 and at least one sensor also enablesaccurate calculation of the movement parameter without mixing up betweenobjects.

First Example Embodiment

A first example embodiment is described hereinafter.

FIG. 2 is a view showing the configuration of an object detection system10 according to the first example embodiment. The object detectionsystem 10 according to the first example embodiment includes a firstsensor 20, a second sensor 40, and an object detection device 100. Thefirst sensor 20 and the second sensor 40 are respectively equivalent ofthe first sensor and the second sensor shown in FIG. 1. The first sensor20 and the second sensor 40 are three-dimensional sensors such as a 3Dscanner, a range sensor, a depth sensor, a distance sensor, and a 3Dcamera (stereo camera) capable of measuring the distance to an object.The first sensor 20 and the second sensor 40 are LIDAR (Light Detectionand Ranging) or the like, for example. Further, the first sensor 20 andthe second sensor 40 are able to recognize the three-dimensionalcoordinates in the three-dimensional space where the object detectionsystem 10 is located. Note that the three-dimensional space may berepresented by the Cartesian coordinate system or represented by thepolar coordinate system. The following description shows an examplewhere the three-dimensional space is represented by the (X, Y, Z)Cartesian coordinate system.

Further, although the first sensor 20 and the second sensor 40 emitlaser light in the upward direction from below an object 90 in thisexample embodiment, the present invention is not limited to thisstructure. The direction of emitting laser light from the first sensor20 and the second sensor 40 is not limited to upward, and it isarbitrary. Further, although the number of the first sensor 20 and thesecond sensor 40 is one each in this example embodiment, the presentinvention is not limited to this structure. A plurality of first sensors20 and a plurality of second sensors 40 may be provided. When aplurality of first sensors 20 are provided, laser light may be appliedboth from above and below the object 90 to enable detection of not onlythe lower shape of the object 90 but also the upper shape of the object90. The same applies to the second sensor 40.

The first sensor 20 is configured to detect a feature of a part of thesurface of an object 90 by applying irradiation light. To be specific,the first sensor 20 measures the distance from the first sensor 20 toeach point on the object 90. Then, the first sensor 20 generatesdistance data indicating the measured distance. The first sensor 20generates distance image data indicating a distance image (point cloud)as the distance data. Specifically, the distance data represents,three-dimensionally, a point group on the surface of the object 90indicating the distance from the first sensor 20.

The first sensor 20 scans irradiation light such as laser light over afirst irradiation area 22 (first irradiation area), which is a certainrange, and receives reflected light of the irradiation light that hasbeen reflected on the object 90. The first sensor 20 then calculates thedistance to the object 90 from a difference between the time oftransmission and the time of reception. After that, the first sensor 20calculates the three-dimensional coordinates (X, Y, Z) of the reflectedposition of laser light on the object 90 from the three-dimensionalposition coordinates of the first sensor 20, the irradiation directionof laser light, and the distance to the object 90.

The first irradiation area 22 of the first sensor 20 may have a planarshape (or a pyramid shape). In the following description, it is assumedthat the first irradiation area 22 is formed on a plane perpendicular tothe X-axis. In other words, the axis perpendicular to the firstirradiation area 22 is the X-axis. The vertical direction is the Z-axis,and the axis perpendicular to the X-axis and the Z-axis is the Y-axis.In this manner, the first sensor 20 forms a laser wall capable ofdetecting the object 90 that has passed the first irradiation area 22and entered on the side of the second sensor 40.

The first sensor 20 detects the three-dimensional coordinates (X, Y, Z)of the position where the surface of the object 90 is irradiated withlaser light in the first irradiation area 22 when the object 90 passesthe first irradiation area 22. Thus, a coordinate data group (pointgroup) corresponding to the positions on the object 90 irradiated by thefirst sensor 20 can form a curved line on a plane perpendicular to theX-axis as shown by the arrow C1.

The second sensor 40 is capable of detecting the shape of the object 90that has passed a second irradiation area 42 (second irradiation area)of the second sensor 40 by a method similar to that of the first sensor20. Specifically, the second sensor 40 scans irradiation light such aslaser light over the second irradiation area 42, which is a certainrange, and receives reflected light of the irradiation light that hasbeen reflected on the object 90. The second sensor 40 then calculatesthe distance to the object 90 from a difference between the time oftransmission and the time of reception. The second sensor 40 therebycalculates the three-dimensional coordinates (X, Y, Z) of the reflectedposition of laser light on the object 90. The second irradiation area 42of the second sensor 40 may have a planar shape (or a pyramid shape).Note that, although the second irradiation area 42 is formed on a planeperpendicular to the X-axis, the present invention is not limited tothis structure. The second irradiation area 42 is not necessarilyparallel to the first irradiation area 22.

The object detection device 100 is a computer, for example. The objectdetection device 100 is connected for communication with the firstsensor 20 and the second sensor 40 by wired or wireless connection. Asdescribed later, the object detection device 100 extracts feature dataindicating a feature of the object 90 in the first irradiation area 22when the object 90 passes the first irradiation area 22 of the firstsensor 20. Further, the object detection device 100 extracts featuredata indicating a feature of the object 90 in the second irradiationarea 42 when the object 90 passes the second irradiation area 42 of thesecond sensor 40. Then, when a difference between the feature dataextracted in the first irradiation area 22 and the feature dataextracted in the second irradiation area 42 falls below a predeterminedthreshold, the object detection device 100 calculates the movementparameter (moving direction and moving speed) of the object 90. Notethat the case where the object 90 passes the first irradiation area 22first and then passes the second irradiation area 42 is described below.However, the object 90 may pass the second irradiation area 42 first andthen pass the first irradiation area 22.

The object detection device 100 includes, as main hardware components, aCPU (Central Processing Unit) 102, a ROM (Read Only Memory) 104, a RAM(Random Access Memory) 106, and an interface unit 108 (IF; Interface).The CPU 102, the ROM 104, the RAM 106 and the interface unit 108 areconnected with each other through a data bus or the like.

The CPU 102 has a function as an arithmetic device that performs controlprocessing, arithmetic processing and so on. The ROM 104 has a functionfor storing a control program, an arithmetic program and so on to beexecuted by the CPU 102. The RAM 106 has a function for temporarilystoring processing data or the like. The interface unit 108 inputs andoutputs signals from and to the outside by wired or wireless connection.Further, the interface unit 108 receives a data input operation by auser and displays information to the user.

FIG. 3 is a functional block diagram showing the object detection system10 according to the first example embodiment. The object detectiondevice 100 includes a first feature extraction unit 110, a featurestorage unit 112, a second feature extraction unit 120, a featurecomparison unit 122, a direction calculation unit 130, and a speedcalculation unit 132 (which are referred to hereinafter as “eachelement”). The first feature extraction unit 110 and the second featureextraction unit 120 function as a feature extraction means. Further, thefeature storage unit 112, the feature comparison unit 122, the directioncalculation unit 130, and the speed calculation unit 132 function as afeature storage means, a feature comparison means, a directioncalculation means, and a speed calculation means, respectively.

Each element can be implemented when the CPU 102 executes a programstored in the ROM 104, for example. Further, a necessary program may berecorded on an arbitrary nonvolatile recording medium and installedaccording to need. Note that each element is not limited to beimplemented by software as described above, and it may be implemented byhardware such as some sort of circuit element. Further, one or more ofthe above-described elements may be implemented by physically separatehardware. Specific functions of each element are described later.

FIG. 4 is a flowchart showing an object detection method performed bythe object detection device 100 according to the first exampleembodiment. The first feature extraction unit 110 extracts feature dataindicating a feature of the object 90 that has passed the firstirradiation area 22 of the first sensor 20 (Step S12). The “featuredata” corresponds to data related to the surface shape of the object 90which is detected by the first sensor 20 in the first irradiation area22. Further, the “feature data” relates to position informationindicating the three-dimensional shape of the object 90 which isdetected by the first sensor 20. A specific example of the “featuredata” is described later. The first feature extraction unit 110 maygenerate the feature data from the position coordinates of each pointgroup acquired by the first sensor 20.

Further, the first feature extraction unit 110 stores the extractedfeature data in association with time when the feature data is extractedand a position where the object 90 has passed the first irradiation area22 into the feature storage unit 112 (S14). Specifically, when “time t1”is associated with certain feature data, this feature data relates tothe shape of the position of the object 90 that has been located in thefirst irradiation area 22 at time t1. Further, the “position where theobject 90 has passed the first irradiation area 22” is a position thatdefines the shape of the object 90 in the first irradiation area 22. Forexample, the object detection device 100 (the first feature extractionunit 110 etc.) may detect a position of the object 90 in the firstirradiation area 22 from a group of coordinate data in the firstirradiation area 22 when the object 90 passes the first irradiation area22. For example, the object detection device 100 (the first featureextraction unit 110 etc.) may calculate the center of mass (i.e., medianpoint) of the coordinate data group of the object 90 in the firstirradiation area 22.

Then, when the object 90 moves from the first irradiation area 22 to thesecond irradiation area 42, the second feature extraction unit 120extracts feature data indicating a feature of the object 90 that haspassed the second irradiation area 42 of the second sensor 40 (StepS16). The “feature data” corresponds to data related to the surfaceshape of the object 90 which is detected by the second sensor 40 in thesecond irradiation area 42. The other description of the feature data isthe same as in the case of S12 and is therefore omitted.

The feature comparison unit 122 calculates a difference between thefeature data extracted by the second feature extraction unit 120 and thefeature data extracted by the first feature extraction unit 110 andstored in the feature storage unit 112 (Step S18). A specific example ofa method of calculating a difference in feature is described later. Notethat the feature comparison unit 122 may generate the feature data fromthe position coordinates of point groups respectively acquired by thefirst sensor 20 and the second sensor 40. Further, the first featureextraction unit 110 and the second feature extraction unit 120 maygenerate the feature data.

Then, the feature comparison unit 122 determines whether the featuredata whose difference from the feature data extracted by the secondfeature extraction unit 120 falls below a predetermined threshold ThAexists among one or more feature data stored in the feature storage unit112 (Step S20). Specifically, the feature comparison unit 122 determineswhether a difference between the feature extracted by the first featureextraction unit 110 in the first irradiation area 22 and the featureextracted by the second feature extraction unit 120 in the secondirradiation area 42 is less than the threshold ThA or not. The thresholdThA may be set to an appropriate value to determine that the features ofthe object 90 are substantially the same. When it is determined that thefeature data whose difference from the feature data extracted by thesecond feature extraction unit 120 is less than the threshold ThA is notstored in the feature storage unit 112, i.e., a difference in featuredata is equal to or more than the threshold ThA (NO in S20), the processreturns to S12.

On the other hand, when it is determined that a difference in featuredata is less than the threshold ThA (YES in S20), the feature comparisonunit 122 determines that the same position on the same object 90 haspassed the first irradiation area 22 and the second irradiation area 42.In this case, the direction calculation unit 130 calculates the movingdirection of the object 90 between the first irradiation area 22 and thesecond irradiation area 42 based on the position where the object 90 haspassed the first irradiation area 22 and the position where the object90 has passed the second irradiation area 42 (Step S22). Further, thespeed calculation unit 132 calculates the moving speed of the object 90between the first irradiation area 22 and the second irradiation area 42based on the time when and the position where the object 90 has passedthe first irradiation area 22 and the time when and the position wherethe object 90 has passed the second irradiation area 42 (Step S24).

Thus, when the feature data whose difference from the feature dataextracted by the second feature extraction unit 120 falls below thethreshold ThA is stored in the feature storage unit 112, the featurecomparison unit 122 determines that the object 90 having passed thefirst irradiation area 22 has passed the second irradiation area 42. Inother words, the feature comparison unit 122 determines that a certainposition on the object 90 having passed the first irradiation area 22has passed the second irradiation area 42. In this case, the directioncalculation unit 130 calculates the moving direction of the object 90,and the speed calculation unit 132 calculates the moving speed of theobject 90.

FIG. 5 is a view illustrating a method of calculating a moving directionand a moving speed according to the first example embodiment. The firstsensor 20 scans laser light in the vertically upward direction (in thepositive direction of the Z-axis) at the position of X=Xs1. Thus, thefirst irradiation area 22 is formed at the position of X=Xs1. Likewise,the second sensor 40 scans laser light in the vertically upwarddirection (in the positive direction of the Z-axis) at the position ofX=Xs2. Thus, the second irradiation area 42 is formed at the position ofX=Xs2. Although the distance between Xs1 and Xs2 is larger than the sizeof the object 90 in FIG. 5 to clarify the description, the distancebetween Xs1 and Xs2 may be significantly smaller than the size of theobject 90 in practice. Thus, a change (rotation) of the posture of theobject 90 between the first irradiation area 22 and the secondirradiation area 42 is negligible.

Then, the object 90 passes the first irradiation area 22 at time t1, anda feature f1 (first feature) of the object 90 in the first irradiationarea 22 is extracted. After that, the object 90 moves to the secondirradiation area 42, and the object 90 passes the second irradiationarea 42 at time t2. At this time, a feature f2 (second feature) of theobject 90 in the second irradiation area 42 is extracted.

In this case, the feature comparison unit 122 determines that adifference between the feature f1 and the feature f2 is less than thethreshold ThA (i.e., the feature f1 and the feature f2 are substantiallythe same). Then, the direction calculation unit 130 calculatescoordinates (Xg1,Yg1,Zg1) of the center of mass G1 of a coordinate datagroup (point group) indicating the feature f1. Likewise, the directioncalculation unit 130 calculates coordinates (Xg2,Yg2,Zg2) of the centerof mass G2 of a coordinate data group (point group) indicating thefeature f2. The direction calculation unit 130 then calculates themoving direction (indicated by the arrow A1) of the object 90 from adifference between the coordinates (Xg1,Yg1,Zg1) of the center of massG1 and the coordinates (Xg2,Yg2,Zg2) of the center of mass G2.

Further, the speed calculation unit 132 calculates the distance Dbetween the center of mass G1 and the center of mass G2. The speedcalculation unit 132 then divides the distance D by a time difference(t2−t1) and thereby calculates a speed v of the object 90. Thus, thespeed calculation unit 132 calculates v=D/(t2−t1).

As described above, the object detection device 100 according to thefirst example embodiment calculates the movement parameter of the object90 when a difference in feature data is less than the threshold ThA,i.e., when the feature data in the first irradiation area 22 and thefeature data in the second irradiation area 42 are substantially thesame. The fact that a difference in feature is less than the thresholdThA (i.e. the feature f1 and the feature f2 are substantially the same)means that the object 90 that has passed the second irradiation area 42is the same as the object 90 that has passed the first irradiation area22. Therefore, by calculating the movement parameter (the movingdirection and the moving speed) of the object 90 at this time, themovement parameter is accurately calculated without mixing up betweenobjects. Since the object detection device 100 according to the firstexample embodiment calculates the movement parameter by using featuresof an object, it is capable of accurately calculating the movementparameter of the object 90.

In the case where the object 90 is a flight vehicle, the movingdirection and the moving speed of the object 90 are not necessarilyconstant, and it is not easy to detect the moving direction and themoving speed of the object 90 by using one radar or the like. On theother hand, the object detection device 100 according to the firstexample embodiment calculates the moving direction and the moving speedby using the coordinate data extracted in two irradiation areas (thefirst irradiation area 22 and the second irradiation area 42) by thefirst sensor 20 and the second sensor 40, which are three-dimensionalsensors. By using features of the object 90, it is easily determinedthat a reference position (e.g., the front of the object 90) forcalculating the movement parameter in the object 90 has passed the firstirradiation area 22 at time t1 and then passed the second irradiationarea 42 at time t2. This allows easy determination as to whether thesame position on the same object 90 has passed the first irradiationarea 22 and the second irradiation area 42. Further, three-dimensionalpositions where the object 90 has passed in each of the firstirradiation area 22 and the second irradiation area 42 can be easilycalculated from the extracted coordinate data. Thus, the objectdetection device 100 according to the first example embodiment iscapable of easily calculating the moving direction and the moving speedof the object 90.

Example of Feature Data and Difference

Specific examples of the feature data of the object 90 and itsdifference are described hereinafter. First to fourth examples aredescribed below. In the following description, it is assumed that theobject 90 is a flight vehicle.

FIG. 6 is a flowchart showing a method of determining whether the sameposition on the same object 90 has passed the first irradiation area 22and the second irradiation area 42 in the first example. FIG. 7 is aview illustrating the first example. In the first example, the featuredata corresponds to the number of data indicating each position on theobject 90 in the first irradiation area 22 and the second irradiationarea 42.

The first feature extraction unit 110 extracts a data group(X₁₁,Y₁₁,Z₁₁), (X₁₂,Y₁₂,Z₁₂), . . . , (X_(1k),Y_(1k),Z_(1k)), . . . ,and (X_(1m),Y_(1m),Z_(1m)) in the first irradiation area 22 at time t1(Step S100). Next, the second feature extraction unit 120 extracts adata group (X₂₁,Y₂₁,Z₂₁), (X₂₂,Y₂₂,Z₂₂), . . . , (X_(2k),Y_(2k),Z_(2k)),. . . , and (X_(2n),Y_(2n),Z_(2n)) in the second irradiation area 42 attime t2 (t2>t1) (Step S102). The first index in each coordinatescorresponds to the irradiation area where the data is extracted. Thesecond index k in each coordinates corresponds to the order of scanningof laser light when each data is acquired. Stated differently, thesecond index k in each coordinates corresponds to the order ofacquisition of data (data number). Further, m indicates the number ofdata in the first irradiation area 22 acquired at time t1, and nindicates the number of data in the second irradiation area 42 acquiredat time t2. Thus, the feature f1 in the first irradiation area 22corresponds to the number m, and the feature f2 in the secondirradiation area 42 corresponds to the number n.

As shown by the arrow Fg1 in FIG. 7, it is assumed that the first sensor20 scans laser light in the positive direction of the Y-axis at theposition of X=Xs1 at time t1. In this case, (X₁₁,Y₁₁,Z₁₁) corresponds toa position P1 where the value of the Y-coordinate is the smallest amongthe positions where the object 90 and the first irradiation area 22intersect. Further, (X_(1m),cY_(1m),Z_(1m)) corresponds to a position Pmwhere the value of the Y-coordinate is the greatest among the positionswhere the object 90 and the first irradiation area 22 intersect.

As shown by the arrow Fg2 in FIG. 7, when the object 90 moves asindicated by the arrow A, the second sensor 40 scans laser light in thepositive direction of the Y-axis at the position of X=Xs2 at time t2. Inthis case, (X₂₁,Y₂₁,Z₂₁) corresponds to a position P2 where the value ofthe Y coordinate is the smallest among the positions where the object 90and the second irradiation area 42 intersect. Further,(X_(2n),Y_(2n),Z_(2n)) corresponds to a position Pn where the value ofthe Y coordinate is the greatest among the positions where the object 90and the second irradiation area 42 intersect.

The feature comparison unit 122 determines whether a difference betweenthe number of data acquired in the first irradiation area 22 and thenumber of data acquired in the second irradiation area 42 is less than apredetermined threshold Th1 or not (Step S104). Specifically, thefeature comparison unit 122 determines whether |m−n|<Th1 is satisfied ornot. Th1 corresponds to ThA shown in FIG. 4. When it is determined that|m−n|≥Th1 is satisfied, i.e., a difference between the number of data inthe first irradiation area 22 and the number of data in the secondirradiation area 42 is equal to or more than the threshold Th1 (NO inS104), the feature comparison unit 122 determines that the feature f1and the feature f2 are not the same. Therefore, the feature comparisonunit 122 determines that the same position on the same object 90 has notpassed each irradiation area (Step S106). On the other hand, when it isdetermined that |m−n|<Th1 is satisfied, i.e., a difference between thenumber of data in the first irradiation area 22 and the number of datain the second irradiation area 42 is less than the threshold Th1 (YES inS104), the feature comparison unit 122 determines that the feature f1and the feature f2 are the same. Therefore, the feature comparison unit122 determines that the same position on the same object 90 has passedeach irradiation area (Step S108). Thus, the direction calculation unit130 and the speed calculation unit 132 calculate the movement parameterof the object 90 at this time.

The surface shape of the object 90 is irregular. Thus, a feature of theshape can vary by object 90 or at different positions on the same object90. Accordingly, if the object 90 (or a position on the same object 90)that has passed each irradiation area is different, the number m of dataacquired when the object 90 has passed the first irradiation area 22 andthe number n of data acquired when the object 90 has passed the secondirradiation area 42 can be different. In contrast, when the sameposition on the same object 90 has passed each irradiation area, thenumber m of data and the number n of data can be substantially the same.It is therefore possible to determine whether the same position on thesame object 90 has passed the first irradiation area 22 and the secondirradiation area 42 or not by using a difference between the number m ofdata obtained in the first irradiation area 22 and the number n of dataobtained in the second irradiation area 42.

Further, in the first example, a difference between the number of dataacquired in the first irradiation area 22 and the number of dataacquired in the second irradiation area 42 is a difference in thefeature of the object 90. Note that the number of data is easily andimmediately determined. Thus, the method according to the first exampleenables easy and immediate calculation of a difference in the feature ofthe object 90.

FIG. 8 is a flowchart showing a method of determining whether the sameposition on the same object 90 has passed the first irradiation area 22and the second irradiation area 42 in the second example. FIG. 9 is aview illustrating the second example. In the second example, the featuredata corresponds to coordinate data indicating each position on theobject 90 in the first irradiation area 22 and the second irradiationarea 42. The first feature extraction unit 110 extracts a data group #1(X₁₁,Y₁₁,Z₁₁), (X₁₂,Y₁₂,Z₁₂), . . . , (X_(1k),Y_(1k),Z_(1k)), . . . ,and (X_(1m),Y_(1m),Z_(1m)) in the first irradiation area 22 at time t1in the same manner as in the processing of S100 (Step S110). Next, thesecond feature extraction unit 120 extracts a data group #2(X₂₁,Y₂₁,Z₂₁), (X₂₂,Y₂₂,Z₂₂), . . . , (X_(2k),Y_(2k),Z_(2k)), . . . ,and (X_(2n),Y_(2n),Z_(2n)) in the second irradiation area 42 at time t2in the same manner as in the processing of S102 (Step S112).

The feature comparison unit 122 determines whether a difference betweenthe number of data acquired in the first irradiation area 22 and thenumber of data acquired in the second irradiation area 42 is less than apredetermined threshold Th21 or not in the same manner as in theprocessing of S104 (Step S114). Th21 corresponds to Th1 shown in FIG. 6.When it is determined that a difference between the number of data inthe first irradiation area 22 and the number of data in the secondirradiation area 42 is equal to or more than the threshold Th21 (NO inS114), the feature comparison unit 122 determines that the same positionon the same object 90 has not passed each irradiation area (Step S116).

On the other hand, when it is determined that a difference between thenumber of data in the first irradiation area 22 and the number of datain the second irradiation area 42 is less than the threshold Th21 (YESin S114), the feature comparison unit 122 calculates a correlationcoefficient c between the data group #1 and the data group #2 (StepS120). For example, the feature comparison unit 122 calculates thevariation between adjacent coordinate data in the data group #1.Likewise, the feature comparison unit 122 calculates the variationbetween adjacent coordinate data in the data group #2.

The “variation” is the slope, distance or the like between coordinatedata, for example. For example, for the data group #1, the featurecomparison unit 122 calculates the slope between (X₁₁,Y₁₁,Z₁₁) and(X₁₂,Y₁₂,Z₁₂). Further, the feature comparison unit 122 calculates theslope between (X_(1k),Y_(1k),Z_(1k)) and(X_(1(k+1)),Y_(1(k+1)),Z_(1(k+1))). Then, the feature comparison unit122 calculates the slope between (X_(1(m-1)),Y_(1(m-1)),Z_(1(m-1))) and(X_(1m),Y_(1m),Z_(1m)). Likewise, for the data group #2, the featurecomparison unit 122 calculates the slope between adjacent coordinatedata. FIG. 9 is a graph showing the relationship between the data number(the second index k of coordinate data) and the slope for each of thedata group #1 and the data group #2. The feature comparison unit 122calculates the correlation coefficient c between those two graphs.

The feature comparison unit 122 determines whether a value Δ2=1−cindicating a difference between the data group #1 and the data group #2is less than a predetermined threshold Th22 or not (Step S122).Specifically, the feature comparison unit 122 determines whether1−c<Th22 is satisfied or not. Th22 (0<Th22<1) corresponds to ThA shownin FIG. 4. When it is determined that 1−c≥Th22 is satisfied, i.e., 1−cis equal to or more than the threshold Th22 (NO in S122), the featurecomparison unit 122 determines that the feature f1 and the feature f2are not the same. Thus, the feature comparison unit 122 determines thatthe same position on the same object 90 has not passed each irradiationarea (Step S116). On the other hand, when it is determined that 1−c<Th22is satisfied, i.e., 1−c is less than the threshold Th22 (YES in S122),the feature comparison unit 122 determines that the feature f1 and thefeature f2 are the same. Thus, the feature comparison unit 122determines that the same position on the same object 90 has passed eachirradiation area (Step S124). Thus, the direction calculation unit 130and the speed calculation unit 132 calculate the movement parameter ofthe object 90 at this time.

The surface shape of the object 90 is irregular. Thus, a feature of theshape can vary by object 90 or at different positions on the same object90. Accordingly, if the object 90 (or a position on the same object 90)that has passed each irradiation area is different, the correlationbetween the data group #1 acquired when the object 90 has passed thefirst irradiation area 22 and the data group #2 acquired when the object90 has passed the second irradiation area 42 is low. In contrast, whenthe same position on the same object 90 has passed each irradiationarea, the correlation between the data group #1 and the data group #2can be high. It is therefore possible to determine whether the sameposition on the same object 90 has passed the first irradiation area 22and the second irradiation area 42 or not by using Δ2=1−c indicating adifference between the data group #1 obtained in the first irradiationarea 22 and the data group #2 obtained in the second irradiation area42.

In the second example, a difference (1−c) between the data group #1acquired in the first irradiation area 22 and the data group #2 acquiredin the second irradiation area 42 is a difference in the feature of theobject 90. It is relatively easy to extract the data group #1 and thedata group #2 respectively in the first irradiation area 22 and thesecond irradiation area 42 and calculate the correlation coefficientbetween them. Thus, the method according to the second example enableseasy calculation of a difference in the feature of the object 90.

Although the feature comparison unit 122 calculates the variation (theslope etc.) between adjacent coordinate data in each of the data group#1 and the data group #2 and calculates the correlation coefficientbetween the graphs of the variation, the present invention is notlimited to this structure. A method of calculating the correlationcoefficient between the data group #1 and the data group #2 isarbitrary. For example, the feature comparison unit 122 may calculatethe correlation coefficient between a curved line formed by the datagroup #1 and a curved line formed by the data group #2. Further, thefeature comparison unit 122 may calculate a difference betweencoordinate elements with the same second index k in a data group #1′ andthe data group #2, where the data group #1′ is obtained by projection(coordinate transformation) of the data group #1 on the plane of X=Xs2in such a way that the center of mass of the data group #1 and thecenter of mass of the data group #2 coincide with each other. Then, thefeature comparison unit 122 may calculate the sum of the square valuesof differences of each element (coordinate data) as a difference in thefeature data, and determine whether this difference is less than thepredetermined threshold ThA or not. Note that, in this case, the featurecomparison unit 122 may perform coordinate transformation in such a waythat the first data in the data group #1 and the first data in the datagroup #2 coincide with each other.

FIG. 10 is a flowchart showing a method of determining whether the sameposition on the same object 90 has passed the first irradiation area 22and the second irradiation area 42 in the third example. FIG. 11 is aview illustrating the third example. In the third example, the featuredata corresponds to the size of the object 90 in the first irradiationarea 22 and the second irradiation area 42. The first feature extractionunit 110 extracts a data group (X₁₁,Y₁₁,Z₁₁), (X₁₂,Y₁₂,Z₁₂), . . . ,(X_(1k),Y_(1k),Z_(1k)), . . . , and (X_(1m),Y_(1m),Z_(1m)) in the firstirradiation area 22 at time t1 in the same manner as in the processingof S100 (Step S130).

The feature comparison unit 122 calculates a coordinate Pmax(Xmax,Ymax,Zmax) of a point where the Y-coordinate is the greatest, anda coordinate Pmin (Xmin,Ymin,Zmin) of a point where the Y coordinate isthe smallest among the extracted data (Step S132). As shown by the arrowFg1 in FIG. 11, the first sensor 20 scans laser light in the positivedirection of the Y-axis at the position of X=Xs1 at time t1. In thiscase, (X₁₁,Y₁₁,Z₁₁) corresponds to a position Pmim1 where the value ofthe Y-coordinate is the smallest among the positions where the object 90and the first irradiation area 22 intersect. Further,(X_(1m),Y_(1m),Z_(1m)) corresponds to a position Pmax1 where the valueof the Y-coordinate is the greatest among the positions where the object90 and the first irradiation area 22 intersect.

The feature comparison unit 122 calculates a distance D1 between Pmaxand Pmin (Step S134). To be specific, the feature comparison unit 122calculates the distance D1 by calculatingD1=√{(Xmax−Xmin)²+(Ymax−Ymin)²+(Zmax−Zmin)²}. This distance D1corresponds to the size of the object 90 in the first irradiation area22.

Then, the same processing as in S130 to S134 is performed for the secondirradiation area 42, and the distance D2 is calculated (Step S136). Tobe specific, the second feature extraction unit 120 extracts a datagroup (X₂₁,Y₂₁,Z₂₁), (X₂₂,Y₂₂,Z₂₂), . . . , (X_(2k),Y_(2k),Z_(2k)), . .. , and (X_(2n),Y_(2n),Z_(2n)) in the second irradiation area 42 at timet2. The feature comparison unit 122 calculates a coordinate Pmax(Xmax,Ymax,Zmax) of a point where the Y-coordinate is the greatest, anda coordinate Pmin (Xmin,Ymin,Zmin) of a point where the Y coordinate isthe smallest among the extracted data.

As shown by the arrow Fg2 in FIG. 11, when the object 90 moves asindicated by the arrow A, the second sensor 40 scans laser light in thepositive direction of the Y-axis at the position of X=Xs2 at time t2. Inthis case, (X₂₁,Y₂₁,Z₂₁) corresponds to a position Pmim2 where the valueof the Y-coordinate is the smallest among the positions where the object90 and the second irradiation area 42 intersect. Further,(X_(2n),Y_(2n),Z_(2n)) corresponds to a position Pmax2 where the valueof the Y-coordinate is the greatest among the positions where the object90 and the second irradiation area 42 intersect. Further, the featurecomparison unit 122 calculates the distance D2 between Pmax and Pmin inthe same manner as in the case of the first irradiation area 22.

After that, the feature comparison unit 122 determines whether adifference between the distance D1 in the first irradiation area 22 andthe distance D2 in the second irradiation area 42 is less than apredetermined threshold Th3 or not (Step S137). Specifically, thefeature comparison unit 122 determines whether |D1−D2|<Th3 is satisfiedor not. Th3 corresponds to ThA shown in FIG. 4. When it is determinedthat |D1−D2|≥Th3 is satisfied (NO in S137), the feature comparison unit122 determines that the feature f1 and the feature f2 are not the same.Thus, the feature comparison unit 122 determines that the same positionon the same object 90 has not passed each irradiation area (Step S138).On the other hand, when it is determined that |D1−D2|<Th3 is satisfied(YES in S137), the feature comparison unit 122 determines that thefeature f1 and the feature f2 are the same. Thus, the feature comparisonunit 122 determines that the same position on the same object 90 haspassed each irradiation area (Step S139). Thus, the directioncalculation unit 130 and the speed calculation unit 132 calculate themovement parameter of the object 90 at this time.

The surface shape of the object 90 is irregular, and its width is notuniform. Thus, the size (width) of the object 90 can vary by object 90or at different positions on the same object 90. Accordingly, if theobject 90 (or a position on the same object 90) that has passed eachirradiation area is different, the size (distance D1) of the object 90in the first irradiation area 22 and the size (distance D2) of theobject 90 in the second irradiation area 42 can be different. Incontrast, when the same position on the same object 90 has passed eachirradiation area, the distance D1 and the distance D2 can besubstantially the same. It is therefore possible to determine whetherthe same position on the same object 90 has passed the first irradiationarea 22 and the second irradiation area 42 or not by using a differencebetween the size in the first irradiation area 22 and the size in thesecond irradiation area 42. Note that the distance may be normalizedwhen calculating a difference in distance.

In the third example, a difference between the size of the object 90 inthe first irradiation area 22 and the size of the object 90 in thesecond irradiation area 42 is a difference in the feature of the object90. It is relatively easy to acquire the coordinate data in each of thefirst irradiation area 22 and the second irradiation area 42, calculatethe sizes of the object 90, and calculate a difference in the size ofthe object 90 in each of the first irradiation area 22 and the secondirradiation area 42. Thus, the method according to the third exampleenables easy calculation of a difference in the feature of the object90.

FIG. 12 is a flowchart showing a method of determining whether the sameposition on the same object 90 has passed the first irradiation area 22and the second irradiation area 42 in the fourth example. FIG. 13 is aview illustrating the fourth example. In the fourth example, the featuredata corresponds to the normal vector of the object 90 in the firstirradiation area 22 and the second irradiation area 42. Note that, inthe fourth example, the first irradiation area 22 and the secondirradiation area 42 are not planar, and they have a width in the X-axisdirection.

The first feature extraction unit 110 extracts data at three measurementpoints A(Xa,Ya,Za), B(Xb,Yb,Zb), and C(Xc,Yc,Zc) in the firstirradiation area 22 as shown by the arrow Fg1 in FIG. 13 (Step S140).The measurement points A. B and C may be points whose intervals (angulardifference) in the irradiation direction of laser light are constant.Further, A may be a point near the center of the object 90 in the firstirradiation area 22.

Next, the feature comparison unit 122 calculates the cross product[AB,AC] (cross product vector) between the vector AB and the vector AC(Step S142). The cross product [AB,AC] corresponds to the normal vectorVn1 of the object 90 in the first irradiation area 22 at time t1. Whenthe X, Y, Z components of the cross product [AB,AC] are (a,b,c), thecross product [AB,AC] is calculated geometrically as below.a=(Yb−Ya)*(Zc−Za)−(Yc−Ya)*(Zb−Za)b=(Zb−Za)*(Xc−Xa)−(Zc−Za)*(Xb−Xa)c=(Xb−Xa)*(Yc−Ya)−(Xc−Xa)*(Yb−Ya)

Then, the feature comparison unit 122 performs the processing of S140 toS142 for the second irradiation area 42, and calculates the crossproduct [A′B′,A′C′] (cross product vector) (Step S144). Specifically,the second feature extraction unit 120 extracts data at threemeasurement points A′(Xa′,Ya′,Za′), B′(Xb′,Yb′,Zb′), and C′(Xc′,Yc′,Zc′)in the second irradiation area 42 as shown by the arrow Fg2 in FIG. 13.The feature comparison unit 122 then calculates the cross product[A′B′,A′C′] between the vector A′B′ and the vector A′C′. The crossproduct [A′B′,A′C′] corresponds to the normal vector Vn2 of the object90 in the second irradiation area 42 at time t2. The measurement pointsA′, B′ and C′ may be points whose intervals (angular difference) in theirradiation direction of laser light are constant. Thus, theX-coordinate can be constant for each of the measurement points A′, B′and C′. Further, A′ may be a point near the center of the object 90 inthe second irradiation area 42. The intervals of the measurement pointsA′, B′ and C′ in the irradiation direction may be the same as theintervals of the measurement points A, B and C in the irradiationdirection in the first irradiation area 22.

The feature comparison unit 122 calculates an angle θ between the normalvector Vn1 (i.e., the cross product vector [AB,AC]) and the normalvector Vn2 (i.e., the cross product vector [A′B′,A′C′]), and determineswhether 1−cos θ<Th41 is satisfied or not (Step S146). Note that Th41 isa predetermined threshold, which corresponds to ThA shown in FIG. 4.Further, cos θ can be calculated by the inner product between the normalvector Vn1 and the normal vector Vn2. When 1−cos θ≥Th41 is satisfied (NOin S146), a difference in direction between the normal vector Vn1 andthe normal vector Vn2 is large, and the feature comparison unit 122determines that the feature f1 and the feature f2 are not the same.Thus, the feature comparison unit 122 determines that the same positionon the same object 90 has not passed each irradiation area (Step S148).

On the other hand, when 1−cos θ<Th41 is satisfied (YES in S146), adifference in direction between the normal vector Vn1 and the normalvector Vn2 is small. In this case, the feature comparison unit 122determines whether a difference between the size |Vn1| of the normalvector Vn1 and the size |Vn2| of the normal vector Vn2 is less than apredetermined threshold Th42 or not (Step S147). Specifically, thefeature comparison unit 122 determines whether ∥Vn1|−|Vn2∥<Th42 issatisfied or not. Th42 corresponds to ThA shown in FIG. 4.

When it is determined that ∥Vn1|−|Vn2∥≥Th42 is satisfied (NO in S147),the feature comparison unit 122 determines that the feature f1 and thefeature f2 are not the same. Thus, the feature comparison unit 122determines that the same position on the same object 90 has not passedeach irradiation area (Step S148). Therefore, the feature comparisonunit 122 determines that the same position on the same object 90 has notpassed each irradiation area when a difference between the size |Vn1| ofthe normal vector in the first irradiation area 22 and the size |Vn2| ofthe normal vector in the second irradiation area 42 is equal to or morethan the threshold Th42. On the other hand, when it is determined that∥Vn1|−|Vn2∥<Th42 is satisfied (YES in S147), the feature comparison unit122 determines that the feature f1 and the feature f2 are the same.Thus, the feature comparison unit 122 determines that the same positionon the same object 90 has passed each irradiation area (Step S149).Therefore, the feature comparison unit 122 determines that the sameposition on the same object 90 has passed each irradiation area when adifference between the size |Vn1| of the normal vector in the firstirradiation area 22 and the size |Vn2| of the normal vector in thesecond irradiation area 42 is less than the threshold Th42. Thus, thedirection calculation unit 130 and the speed calculation unit 132calculate the movement parameter of the object 90 at this time.

The surface shape of the object 90 is irregular, and the orientation ofthe surface is also not uniform when the surface shape has a streamlinedshape or the like. Thus, the normal vector can vary by object 90 or atdifferent positions on the same object 90. Accordingly, if the object 90(or a position on the same object 90) that has passed each irradiationarea is different, the normal vector Vn1 of the object 90 in the firstirradiation area 22 and the normal vector Vn2 of the object 90 in thesecond irradiation area 42 can be different. In contrast, when the sameposition on the same object 90 has passed each irradiation area, thenormal vector Vn1 and the normal vector Vn2 can be substantially thesame. It is therefore possible to determine whether the same position onthe same object 90 has passed the first irradiation area 22 and thesecond irradiation area 42 or not by using a difference between thenormal vectors (a difference in each of the direction and the size ofthe normal vectors) in the first irradiation area 22 and the secondirradiation area 42. Note that the size of the normal vector may benormalized when calculating a difference in the size of the normalvectors (S147).

In the fourth example, a difference between the normal vector of theobject 90 in the first irradiation area 22 and the normal vector of theobject 90 in the second irradiation area 42 is a difference in thefeature of the object 90. Since the normal vector is uniquely defined ifa plane is determined, it appropriately represents the surface shape ofthe object 90. Thus, the method according to the fourth example enablesmore appropriate calculation of a difference in the feature of theobject 90.

Modified Example

It should be noted that the present invention is not restricted to theabove-described example embodiments, and various changes andmodifications may be made without departing from the scope of theinvention. For example, the order of process steps in the flowchartsshown in FIG. 4 and so on may be altered as appropriate. Further, one ormore process steps in the flowcharts shown in FIG. 4 and so on may beomitted. For example, one of S22 and S24 in FIG. 4 may be omitted.Further, although the object 90 passes the first irradiation area 22 andthen passes the second irradiation area 42 in the above-describedexample embodiments, the present invention is not limited to thisstructure. The object 90 may pass the second irradiation area 42 andthen pass the first irradiation area 22. In this case, the featurestorage unit 112 may store the feature data extracted by the secondfeature extraction unit 120. The feature comparison unit 122 may thencompare the feature data extracted by the first feature extraction unit110 with the feature data stored in the feature storage unit 112.

Further, although the object detection device 100 according to the firstexample embodiment includes the first feature extraction unit 110 andthe second feature extraction unit 120 in the above description, thepresent invention is not limited to this structure. The first featureextraction unit 110 and the second feature extraction unit 120 may beimplemented by one element. Specifically, one feature extraction unitmay extract a feature of the object 90 in the first irradiation area 22and a feature of the object 90 in the second irradiation area 42.

Further, although the first sensor 20 and the second sensor 40 arethree-dimensional sensors in the above-described example embodiments,the present invention is not limited to this structure. The first sensor20 and the second sensor 40 may be two-dimensional sensors. However, ifthe first sensor 20 and the second sensor 40 are two-dimensionalsensors, it is necessary to perform complicated image processing such asimage recognition in order to detect the shape of the object 90.Further, use of a three-dimensional sensor enables accurate detection ofthe three-dimensional shape of the object 90 compared with use of atwo-dimensional sensor. Thus, use of a three-dimensional sensor enableseasy and accurate detection of the shape of the object 90. Furthermore,use of a three-dimensional sensor enables accurate detection of aposition where the object 90 has passed the irradiation area comparedwith use of a two-dimensional sensor. Thus, use of a three-dimensionalsensor enables accurate calculation of the movement parameter of theobject 90.

Further, although the object detection system 10 includes two sensors inthe above-described example embodiments, the present invention is notlimited to this structure. The number of sensors may be three. Then, theacceleration of the object 90 may be calculated by using the positionand time where object 90 passes three irradiation areas formed by thethree sensors. For example, a third irradiation area may be providedbetween the first irradiation area 22 and the second irradiation area42, and the acceleration can be calculated from a difference between thespeed between the first irradiation area 22 and the third irradiationarea and the speed between the third irradiation area and the secondirradiation area 42. Thus, the object detection device 100 may calculatethe acceleration of the object 90 as the movement parameter.

Further, although the first sensor 20 forms the first irradiation area22 and the second sensor 40 forms the second irradiation area 42 in theabove-described example embodiments, the present invention is notlimited to this structure. One sensor may form both of the firstirradiation area 22 and the second irradiation area 42. In this case,the first irradiation area 22 and the second irradiation area 42 may beformed by using a scan mirror such as a polygon mirror for laser lightfrom a sensor. Further, one sensor may form three or more irradiationareas.

Further, in the above-described first example embodiment, rotation ofthe object 90 between the first irradiation area 22 and the secondirradiation area 42 is not taken into consideration. However, thefeature comparison unit 122 may compare coordinate data groups extractedrespectively in the first irradiation area 22 and the second irradiationarea 42 in consideration of the case where the object 90 rotates betweenthe first irradiation area 22 and the second irradiation area 42.

FIG. 14 is a view illustrating coordinate transformation of a data groupin consideration of the rotation of the object 90. FIG. 14 shows thecase where the object 90 has rotated clockwise (in the directionindicated by the arrow A2) about the roll axis (the axis parallel to theX-axis). In this case, the feature comparison unit 122 may determinewhether the similarity (correlation coefficient c′) between the shape ofa curved line formed by the data group #1 and the shape of a curved lineformed by the data group #2 is equal to or more than a predeterminedthreshold when the data group #1 or the data group #2 is rotated. Thesimilarity (correlation coefficient c′) of the shapes may be calculatedby the method described earlier in the second example, for example. Forthe rotation of a data group, the feature comparison unit 122 calculatesa slope a1 of the straight line connecting the first coordinate data(X₁,Y₁₁,Z₁₁) and the last coordinate data (X_(1m),Y_(1m),Z_(1m)) in thedata group #1. Likewise, the feature comparison unit 122 calculates aslope a2 of the straight line connecting the first coordinate data(X₂₁,Y₂₁,Z₂₁) and the last coordinate data (X_(2n),Y_(2n),Z_(2n)) in thedata group #2. Then, the feature comparison unit 122 may determine thedegree of rotation when rotating the data group #1 or the data group #2from a difference between the slope a1 and the slope a2.

Note that, when the object 90 rotates, there is a case where a positionthat has been detected in the first irradiation area 22 is not detectedin the second irradiation area 42, and a position that has not beendetected in the first irradiation area 22 is detected in the secondirradiation area 42. For example, in FIG. 14, there is a case where aposition corresponding to the left part (on the negative side of theY-axis) of the data group #1 (for example, the left part of the bottomsurface of the object 90) is not irradiated with laser light in thesecond irradiation area 42 and does not appear in the data group #2. Incontrast, there is a case where a position corresponding to the rightpart (on the positive side of the Y-axis) of the data group #2 (forexample, the right side surface of the object 90) is not irradiated withlaser light in the first irradiation area 22 and does not appear in thedata group #1. Thus, the feature comparison unit 122 may determinewhether the correlation coefficient c′ between at least part of theshape of a curved line formed by the data group #1 and at least part ofthe shape of a curved line formed by the data group #2 is equal to ormore than a predetermined threshold. The feature comparison unit 122therefore does not need to compare the whole of the data group. The sameapplies to the case with no consideration of the rotation of the object90.

Further, in the above-described example embodiments, it is determined tobe the same position on the same object when a difference in feature isless than a predetermined threshold (S20 in FIG. 4). On the other hand,the case where, despite that a certain object has passed the firstirradiation area 22 and the second irradiation area 42, a difference infeature does not fall below a threshold due to some reasons even if thefeature data extracted in the second irradiation area 42 is comparedwith all the feature data stored in the feature storage unit 112 may betaken into consideration. In this case, the movement parameter of theobject 90 may be calculated from the passing position and time where thefeature data whose difference from the feature data extracted in thesecond irradiation area 42 is the smallest among the feature data storedin the feature storage unit 112 is extracted.

Further, the case where there are a plurality of feature data whosedifference from the feature data extracted in the second irradiationarea 42 is less than a threshold among the feature data stored in thefeature storage unit 112 may be taken into consideration. In this case,the movement parameter of the object 90 may be calculated from thepassing position and time where the feature data whose difference fromthe feature data extracted in the second irradiation area 42 is thesmallest among the plurality of feature data is extracted.

Further, the case where objects in similar shapes have entered in agroup may be taken into consideration. In this case also, there is apossibility that there are a plurality of feature data whose differencefrom the feature data extracted in the second irradiation area 42 isless than a threshold among the feature data stored in the featurestorage unit 112. In this case, the movement parameter of the object 90may be calculated from the passing position and time where the featuredata with the minimum distance between positions where each feature datais extracted in each irradiation area is extracted.

In the above-described example, the program can be stored and providedto a computer using any type of non-transitory computer readable media.Non-transitory computer readable media include any type of tangiblestorage media. Examples of non-transitory computer readable mediainclude magnetic storage media (such as flexible disks, magnetic tapes,hard disk drives, etc.), optical magnetic storage media (e.g.,magneto-optical disks), Compact Disc Read Only Memory (CD-ROM), CD-R,CD-R/W, and semiconductor memories (such as mask ROM, Programmable ROM(PROM), Erasable PROM (EPROM), flash ROM, Random Access Memory (RAM),etc.). The program may be provided to a computer using any type oftransitory computer readable media. Examples of transitory computerreadable media include electric signals, optical signals, andelectromagnetic waves. Transitory computer readable media can providethe program to a computer via a wired communication line (e.g., electricwires, and optical fibers) or a wireless communication line.

While the invention has been particularly shown and described withreference to example embodiments thereof, the invention is not limitedto these example embodiments. It will be understood by those of ordinaryskill in the art that various changes in form and details may be madetherein without departing from the spirit and scope of the presentinvention as defined by the claims.

The whole or part of the example embodiments disclosed above can bedescribed as, but not limited to, the following supplementary notes.

(Supplementary Note 1)

An object detection device comprising:

a feature extraction means for extracting features of an object in aplurality of irradiation areas of irradiation light from at least onesensor when the object passes each of the plurality of irradiationareas, the at least one sensor being configured to detect a feature of apart of a surface of the object by applying irradiation light; and

a calculation means for calculating a movement parameter related tomovement of the object between the plurality of irradiation areas when adifference between the features respectively extracted in the pluralityof irradiation areas falls below a predetermined first threshold.

(Supplementary Note 2)

The object detection device according to Supplementary Note 1, furthercomprising:

a feature comparison means for comparing the features respectivelyextracted in the plurality of irradiation areas, and determining thatthe same position on the same object has passed each of the irradiationareas when a difference between the extracted features falls below thepredetermined first threshold.

(Supplementary Note 3)

The object detection device according to Supplementary Note 1 or 2,wherein, when a difference between a first feature extracted in a firstirradiation area among the plurality of irradiation areas and a secondfeature extracted in a second irradiation area among the plurality ofirradiation areas falls below the first threshold, the calculation meanscalculates a moving direction of the object between the firstirradiation area and the second irradiation area based on a positionwhere the object has passed the first irradiation area when the firstfeature is extracted and a position where the object has passed thesecond irradiation area when the second feature is extracted.

(Supplementary Note 4)

The object detection device according to any one of Supplementary Notes1 to 3, wherein, when a difference between a first feature extracted ina first irradiation area among the plurality of irradiation areas and asecond feature extracted in a second irradiation area among theplurality of irradiation areas falls below the first threshold, thecalculation means calculates a moving speed of the object between thefirst irradiation area and the second irradiation area based on a timewhen and a position where the object has passed the first irradiationarea when the first feature is extracted and a time when and a positionwhere the object has passed the second irradiation area when the secondfeature is extracted.

(Supplementary Note 5)

The object detection device according to any one of Supplementary Notes1 to 4, wherein

the sensor is a three-dimensional sensor, and

the extracted feature relates to a shape of the object.

(Supplementary Note 6)

The object detection device according to Supplementary Note 5, wherein

the extracted feature corresponds to the number of data indicating eachposition of the object in the irradiation areas of the sensor, and

the calculation means calculates the movement parameter when adifference in the number of data in each of the plurality of irradiationareas falls below the first threshold.

(Supplementary Note 7)

The object detection device according to Supplementary Note 5, wherein

the extracted feature corresponds to coordinate data indicating eachposition of the object in the irradiation areas of the sensor, and

the calculation means calculates the movement parameter when adifference in the coordinate data in each of the plurality ofirradiation areas falls below the first threshold.

(Supplementary Note 8)

The object detection device according to Supplementary Note 5, wherein

the extracted feature corresponds to a size of the object in theirradiation areas of the sensor, and

the calculation means calculates the movement parameter when adifference in the size of the object in each of the plurality ofirradiation areas falls below the first threshold.

(Supplementary Note 9)

The object detection device according to Supplementary Note 5, wherein

the extracted feature corresponds to a normal vector of the object inthe irradiation areas of the sensor, and

the calculation means calculates the movement parameter when adifference in the normal vector of the object in each of the pluralityof irradiation areas falls below the first threshold.

(Supplementary Note 10)

An object detection system comprising:

at least one sensor configured to detect a feature of a part of asurface of an object by applying irradiation light; and

the object detection device according to any one of Supplementary Notes1 to 9.

(Supplementary Note 11)

An object detection method comprising:

extracting features of an object in a plurality of irradiation areas ofirradiation light from at least one sensor when the object passes eachof the plurality of irradiation areas, the at least one sensor beingconfigured to detect a feature of a part of a surface of the object byapplying irradiation light; and

calculating a movement parameter related to movement of the objectbetween the plurality of irradiation areas when a difference between thefeatures respectively extracted in the plurality of irradiation areasfalls below a predetermined first threshold.

(Supplementary Note 12)

The object detection method according to Supplementary Note 11,comprising:

comparing the features respectively extracted in the plurality ofirradiation areas, and determining that the same position on the sameobject has passed each of the irradiation areas when a differencebetween the extracted features falls below the predetermined firstthreshold.

(Supplementary Note 13)

The object detection method according to Supplementary Note 11 or 12,wherein when a difference between a first feature extracted in a firstirradiation area among the plurality of irradiation areas and a secondfeature extracted in a second irradiation area among the plurality ofirradiation areas falls below the predetermined first threshold, amoving direction of the object between the first irradiation area andthe second irradiation area is calculated based on a position where theobject has passed the first irradiation area when the first feature isextracted and a position where the object has passed the secondirradiation area when the second feature is extracted.

(Supplementary Note 14)

The object detection method according to any one of Supplementary Notes11 to 13, wherein, when a difference between a first feature extractedin a first irradiation area among the plurality of irradiation areas anda second feature extracted in a second irradiation area among theplurality of irradiation areas falls below the predetermined firstthreshold, a moving speed of the object between the first irradiationarea and the second irradiation area is calculated based on a time whenand a position where the object has passed the first irradiation areawhen the first feature is extracted and a time when and a position wherethe object has passed the second irradiation area when the secondfeature is extracted.

(Supplementary Note 15)

The object detection method according to any one of Supplementary Notes11 to 14, wherein

the sensor is a three-dimensional sensor, and

the extracted feature relates to a shape of the object.

(Supplementary Note 16)

The object detection method according to Supplementary Note 15, wherein

the extracted feature corresponds to the number of data indicating eachposition of the object in the irradiation areas of the sensor, and

the movement parameter is calculated when a difference in the number ofdata in each of the plurality of irradiation areas falls below the firstthreshold.

(Supplementary Note 17)

The object detection method according to Supplementary Note 15, wherein

the extracted feature corresponds to coordinate data indicating eachposition of the object in the irradiation areas of the sensor, and

the movement parameter is calculated when a difference in the coordinatedata in each of the plurality of irradiation areas falls below the firstthreshold.

(Supplementary Note 18)

The object detection method according to Supplementary Note 15, wherein

the extracted feature corresponds to a size of the object in theirradiation areas of the sensor, and

the movement parameter is calculated when a difference in the size ofthe object in each of the plurality of irradiation areas falls below thefirst threshold.

(Supplementary Note 19)

The object detection method according to Supplementary Note 15, wherein

the extracted feature corresponds to a normal vector of the object inthe irradiation areas of the sensor, and

the movement parameter is calculated when a difference in the normalvector of the object in each of the plurality of irradiation areas fallsbelow the first threshold.

(Supplementary Note 20)

A non-transitory computer-readable medium storing a program causing acomputer to perform:

a step of extracting features of an object in a plurality of irradiationareas of irradiation light from at least one sensor when the objectpasses each of the plurality of irradiation areas, the at least onesensor being configured to detect a feature of a part of a surface ofthe object by applying irradiation light; and

a step of calculating a movement parameter related to movement of theobject between the plurality of irradiation areas when a differencebetween the features respectively extracted in the plurality ofirradiation areas falls below a predetermined first threshold.

REFERENCE SIGNS LIST

-   1 OBJECT DETECTION DEVICE-   2 FEATURE EXTRACTION UNIT-   4 CALCULATION UNIT-   10 OBJECT DETECTION SYSTEM-   20 FIRST SENSOR-   22 FIRST IRRADIATION AREA-   40 SECOND SENSOR 40-   42 SECOND IRRADIATION AREA-   90 OBJECT-   100 OBJECT DETECTION DEVICE-   110 FIRST FEATURE EXTRACTION UNIT-   112 FEATURE STORAGE UNIT-   120 SECOND FEATURE EXTRACTION UNIT-   122 FEATURE COMPARISON UNIT-   130 DIRECTION CALCULATION UNIT-   132 SPEED CALCULATION UNIT

The invention claimed is:
 1. An object detection device comprising:hardware, including a processor and memory; a feature extraction unitimplemented at least by the hardware and configured to extract featuresof an object in a plurality of irradiation areas of irradiation lightfrom at least one sensor when the object passes each of the plurality ofirradiation areas, the at least one sensor being configured to detect afeature of a part of a surface of the object by applying irradiationlight; and a calculation unit implemented at least by the hardware andconfigured to calculate a movement parameter related to movement of theobject between the plurality of irradiation areas when a differencebetween the features respectively extracted in the plurality ofirradiation areas falls below a predetermined first threshold.
 2. Theobject detection device according to claim 1, further comprising: afeature comparison unit implemented at least by the hardware andconfigured to compare the features respectively extracted in theplurality of irradiation areas, and determine that the same position onthe same object has passed each of the irradiation areas when adifference between the extracted features falls below the predeterminedfirst threshold.
 3. The object detection device according to claim 1,wherein, when a difference between a first feature extracted in a firstirradiation area among the plurality of irradiation areas and a secondfeature extracted in a second irradiation area among the plurality ofirradiation areas falls below the first threshold, the calculation unitcalculates a moving direction of the object between the firstirradiation area and the second irradiation area based on a positionwhere the object has passed the first irradiation area when the firstfeature is extracted and a position where the object has passed thesecond irradiation area when the second feature is extracted.
 4. Theobject detection device according to claim 1, wherein, when a differencebetween a first feature extracted in a first irradiation area among theplurality of irradiation areas and a second feature extracted in asecond irradiation area among the plurality of irradiation areas fallsbelow the first threshold, the calculation unit calculates a movingspeed of the object between the first irradiation area and the secondirradiation area based on a time when and a position where the objecthas passed the first irradiation area when the first feature isextracted and a time when and a position where the object has passed thesecond irradiation area when the second feature is extracted.
 5. Theobject detection device according to claim 1, wherein the sensor is athree-dimensional sensor, and the extracted feature relates to a shapeof the object.
 6. The object detection device according to claim 5,wherein the extracted feature corresponds to the number of dataindicating each position of the object in the irradiation areas of thesensor, and the calculation unit calculates the movement parameter whena difference in the number of data in each of the plurality ofirradiation areas falls below the first threshold.
 7. The objectdetection device according to claim 5, wherein the extracted featurecorresponds to coordinate data indicating each position of the object inthe irradiation areas of the sensor, and the calculation unit calculatesthe movement parameter when a difference in the coordinate data in eachof the plurality of irradiation areas falls below the first threshold.8. The object detection device according to claim 5, wherein theextracted feature corresponds to a size of the object in the irradiationareas of the sensor, and the calculation unit calculates the movementparameter when a difference in the size of the object in each of theplurality of irradiation areas falls below the first threshold.
 9. Theobject detection device according to claim 5, wherein the extractedfeature corresponds to a normal vector of the object in the irradiationareas of the sensor, and the calculation unit calculates the movementparameter when a difference in the normal vector of the object in eachof the plurality of irradiation areas falls below the first threshold.10. An object detection system comprising: at least one sensorconfigured to detect a feature of a part of a surface of an object byapplying irradiation light; and the object detection device according toclaim
 1. 11. An object detection method comprising: extracting featuresof an object in a plurality of irradiation areas of irradiation lightfrom at least one sensor when the object passes each of the plurality ofirradiation areas, the at least one sensor being configured to detect afeature of a part of a surface of the object by applying irradiationlight; and calculating a movement parameter related to movement of theobject between the plurality of irradiation areas when a differencebetween the features respectively extracted in the plurality ofirradiation areas falls below a predetermined first threshold.
 12. Theobject detection method according to claim 11, comprising: comparing thefeatures respectively extracted in the plurality of irradiation areas,and determining that the same position on the same object has passedeach of the irradiation areas when a difference between the extractedfeatures falls below the predetermined first threshold.
 13. The objectdetection method according to claim 11, wherein when a differencebetween a first feature extracted in a first irradiation area among theplurality of irradiation areas and a second feature extracted in asecond irradiation area among the plurality of irradiation areas fallsbelow the predetermined first threshold, a moving direction of theobject between the first irradiation area and the second irradiationarea is calculated based on a position where the object has passed thefirst irradiation area when the first feature is extracted and aposition where the object has passed the second irradiation area whenthe second feature is extracted.
 14. The object detection methodaccording to claim 11, wherein, when a difference between a firstfeature extracted in a first irradiation area among the plurality ofirradiation areas and a second feature extracted in a second irradiationarea among the plurality of irradiation areas falls below thepredetermined first threshold, a moving speed of the object between thefirst irradiation area and the second irradiation area is calculatedbased on a time when and a position where the object has passed thefirst irradiation area when the first feature is extracted and a timewhen and a position where the object has passed the second irradiationarea when the second feature is extracted.
 15. The object detectionmethod according to claim 11, wherein the sensor is a three-dimensionalsensor, and the extracted feature relates to a shape of the object. 16.The object detection method according to claim 15, wherein the extractedfeature corresponds to the number of data indicating each position ofthe object in the irradiation areas of the sensor, and the movementparameter is calculated when a difference in the number of data in eachof the plurality of irradiation areas falls below the first threshold.17. The object detection method according to claim 15, wherein theextracted feature corresponds to coordinate data indicating eachposition of the object in the irradiation areas of the sensor, and themovement parameter is calculated when a difference in the coordinatedata in each of the plurality of irradiation areas falls below the firstthreshold.
 18. The object detection method according to claim 15,wherein the extracted feature corresponds to a size of the object in theirradiation areas of the sensor, and the movement parameter iscalculated when a difference in the size of the object in each of theplurality of irradiation areas falls below the first threshold.
 19. Theobject detection method according to claim 15, wherein the extractedfeature corresponds to a normal vector of the object in the irradiationareas of the sensor, and the movement parameter is calculated when adifference in the normal vector of the object in each of the pluralityof irradiation areas falls below the first threshold.
 20. Anon-transitory computer-readable medium storing a program causing acomputer to perform: a step of extracting features of an object in aplurality of irradiation areas of irradiation light from at least onesensor when the object passes each of the plurality of irradiationareas, the at least one sensor being configured to detect a feature of apart of a surface of the object by applying irradiation light; and astep of calculating a movement parameter related to movement of theobject between the plurality of irradiation areas when a differencebetween the features respectively extracted in the plurality ofirradiation areas falls below a predetermined first threshold.